package com.zhongwang.mms.module.purchase.dao;

import com.zhongwang.mms.gen.entity.TWarehouseInfo;
import com.zhongwang.mms.module.purchase.model.PurInvQueryModel;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface PurlnvQueryDao {
    /**
     * selectByParam
     * 加载库存列表以及综合查询
     * @param param 查询条件
     * @return
     */
    List<PurInvQueryModel> selectByParam(PurInvQueryModel param);
    /**
     * selectByParam
     * 加载库存列表以及综合查询批量串料查询
     * @param param 查询条件
     * @return
     */
    List<PurInvQueryModel> findPurChangeListInvList(PurInvQueryModel param);
    /**
     * selectByParam
     * 加载库存列表以及综合查询 无金钱查看权限
     * @param param 查询条件
     * @return
     */
    List<PurInvQueryModel> selectByParamAndNoAmount(PurInvQueryModel param);

    List<TWarehouseInfo> findWarehouseInfoListByPurchase();

    void createWarQueryTempTable(PurInvQueryModel param);
    void createWarQueryTempTable2(PurInvQueryModel param);
    void createWarQueryTempTable2NotMoney(PurInvQueryModel param);

    Integer getTempTableDataCount(PurInvQueryModel param);

    List<PurInvQueryModel> selectPInventoryTempTableByParam(PurInvQueryModel param);

    List<PurInvQueryModel> selectPInventoryTempTableByParamAndNoAmount(PurInvQueryModel param);

    void dropWarQueryTempTable(String tempTableName);
}
